// This example shows how to read data value of 3 nodes at once, from the device (data source). using System; using OpcLabs.EasyOpc.UA; using OpcLabs.EasyOpc.UA.OperationModel; namespace UADocExamples._EasyUAClient { partial class ReadMultiple { public static void FromDevice() { UAEndpointDescriptor endpointDescriptor = "opc.tcp://opcua.demo-this.com:51210/UA/SampleServer"; // or "http://opcua.demo-this.com:51211/UA/SampleServer" (currently not supported) // or "https://opcua.demo-this.com:51212/UA/SampleServer/" // Instantiate the client object var client = new EasyUAClient(); // Obtain attribute data. By default, the Value attributes of the nodes will be read. // The parameters specify reading from the device (data source), which may be slow but provides the very latest // data. UAAttributeDataResult[] attributeDataResultArray = client.ReadMultiple(new[] { new UAReadArguments(endpointDescriptor, "nsu=http://test.org/UA/Data/ ;i=10845", UAReadParameters.FromDevice), new UAReadArguments(endpointDescriptor, "nsu=http://test.org/UA/Data/ ;i=10853", UAReadParameters.FromDevice), new UAReadArguments(endpointDescriptor, "nsu=http://test.org/UA/Data/ ;i=10855", UAReadParameters.FromDevice) }); // Display results foreach (UAAttributeDataResult attributeDataResult in attributeDataResultArray) { if (attributeDataResult.Succeeded) Console.WriteLine("AttributeData: {0}", attributeDataResult.AttributeData); else Console.WriteLine("*** Failure: {0}", attributeDataResult.ErrorMessageBrief); } } // Example output: // //AttributeData: 51 {System.Int16} @11/6/2011 1:49:19 PM @11/6/2011 1:49:19 PM; Good //AttributeData: -1993984 {System.Single} @11/6/2011 1:49:19 PM @11/6/2011 1:49:19 PM; Good //AttributeData: Yellow% Dragon Cat) White Blue Dog# Green Banana- {System.String} @11/6/2011 1:49:19 PM @11/6/2011 1:49:19 PM; Good } }
# This example shows how to read data value of 3 nodes at once, from the device (data source). # The QuickOPC package is needed. Install it using "pip install opclabs_quickopc". import opclabs_quickopc import time # Import .NET namespaces. from OpcLabs.EasyOpc.UA import * from OpcLabs.EasyOpc.UA.OperationModel import * endpointDescriptor = UAEndpointDescriptor('opc.tcp://opcua.demo-this.com:51210/UA/SampleServer') # or 'http://opcua.demo-this.com:51211/UA/SampleServer' (currently not supported) # or 'https://opcua.demo-this.com:51212/UA/SampleServer/' # Instantiate the client object. client = EasyUAClient() # Obtain attribute data. By default, the Value attributes of the nodes will be read. # The parameters specify reading from the device (data source), which may be slow but provides the very latest # data. attributeDataResultArray = client.ReadMultiple([ UAReadArguments(endpointDescriptor, UANodeDescriptor('nsu=http://test.org/UA/Data/ ;i=10845'), UAReadParameters.FromDevice), UAReadArguments(endpointDescriptor, UANodeDescriptor('nsu=http://test.org/UA/Data/ ;i=10853'), UAReadParameters.FromDevice), UAReadArguments(endpointDescriptor, UANodeDescriptor('nsu=http://test.org/UA/Data/ ;i=10855'), UAReadParameters.FromDevice), ]) # Display results. for attributeDataResult in attributeDataResultArray: if attributeDataResult.Succeeded: print('AttributeData: ', attributeDataResult.AttributeData, sep='') else: print('*** Failure: ', attributeDataResult.ErrorMessageBrief, sep='') print() print('Finished.')
Copyright © 2004-2023 CODE Consulting and Development, s.r.o., Plzen. All rights reserved. Web page: www.opclabs.com
Send Documentation Feedback. Resources: Knowledge Base. Technical support: Online Forums, FAQ.